home *** CD-ROM | disk | FTP | other *** search
/ CDUTIL 13 / CDUTIL #13 Julio 1995.iso / windows / acadwin / ads / cpp / dde / conxclnt.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-02-08  |  4.8 KB  |  115 lines

  1. /* 
  2.     CONXCLNT.H -
  3.     
  4.     This file:
  5.  
  6.         Declares DDE_CLIENT_CONNECTION object which is used to
  7.         support DDE client connection to talk to the servers.
  8.  
  9.     (C) Copyright 1988-1994 by Autodesk, Inc.
  10.  
  11.     This program is copyrighted by Autodesk, Inc. and is  licensed
  12.     to you under the following conditions.  You may not distribute
  13.     or  publish the source code of this program in any form.   You
  14.     may  incorporate this code in object form in derivative  works
  15.     provided  such  derivative  works  are  (i.) are  designed and
  16.     intended  to  work  solely  with  Autodesk, Inc. products, and
  17.     (ii.)  contain  Autodesk's  copyright  notice  "(C)  Copyright
  18.     1988-1994 by Autodesk, Inc."
  19.  
  20.     AUTODESK  PROVIDES THIS PROGRAM "AS IS" AND WITH  ALL  FAULTS.
  21.     AUTODESK  SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF  MER-
  22.     CHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK,  INC.
  23.     DOES  NOT  WARRANT THAT THE OPERATION OF THE PROGRAM  WILL  BE
  24.     UNINTERRUPTED OR ERROR FREE.
  25.  
  26. */
  27. #ifndef CONXCLNT_H
  28. #define CONXCLNT_H
  29.  
  30. #include "ddeinc.h"
  31.  
  32. //-----------------------------------------------------------------------------
  33. class DDE_CLIENT_CONNECTION : public DDE_CONNECTION
  34. {
  35. protected:
  36.     SERVER_INFO                 *server;
  37.  
  38.     ADS_STRING                  sending_string;
  39.     virtual BOOL                Flushsendingstring();
  40.  
  41. public:
  42.     virtual BOOL                BeginSend();
  43.     virtual BOOL                EndSend();
  44.     virtual BOOL                SendString( ADS_STRING& string );
  45.     virtual BOOL                SendString( LPBYTE string )
  46.                                 { 
  47.                                     return SendString( ADS_STRING( (char*)string ) );
  48.                                 }
  49.  
  50.     virtual WORD                ExcuteCommand( char* cmd );
  51.  
  52.                                 DDE_CLIENT_CONNECTION();
  53.     virtual                     ~DDE_CLIENT_CONNECTION();
  54.  
  55.                                 DDE_CLIENT_CONNECTION( const DDE_CLIENT_CONNECTION &);
  56.                                 DDE_CLIENT_CONNECTION( SERVER_INFO& server );
  57.  
  58.     static HDDEDATA CALLBACK    ClientCallBack(WORD wType
  59.                                                 , WORD wFmt
  60.                                                 , HCONV hConv
  61.                                                 , HSZ hsz1
  62.                                                 , HSZ hsz2
  63.                                                 , HDDEDATA hData
  64.                                                 , DWORD lData1
  65.                                                 , DWORD lData2);
  66.     virtual HDDEDATA            XAdvdata( WORD wFmt
  67.                                             , HSZ hsz1
  68.                                             , HSZ hsz2
  69.                                             , HDDEDATA hData );
  70.     virtual HDDEDATA            XDisconnect( HSZ hsz1
  71.                                             , DWORD lData2);
  72.     virtual HDDEDATA            XError( DWORD lData1 );
  73.     virtual HDDEDATA            XRegister(  HSZ hsz1
  74.                                             , HSZ hsz2 );
  75.     virtual HDDEDATA            XUnregister(  HSZ hsz1
  76.                                             , HSZ hsz2 );
  77.     virtual HDDEDATA            XXactComplete( WORD wFmt
  78.                                             , HSZ hsz1
  79.                                             , HSZ hsz2
  80.                                             , HDDEDATA hData
  81.                                             , DWORD lData1
  82.                                             , DWORD lData2);
  83.  
  84.     virtual BOOL                Valid()
  85.                                 {
  86.                                     return ( DDE_CONNECTION::Valid() 
  87.                                             && server->Valid() );
  88.                                 }
  89.  
  90.     virtual BOOL                SetupConnection();
  91.     BOOL                        RemoveConnection();
  92.  
  93.     virtual BOOL                Link();
  94.     virtual BOOL                Unlink();
  95.  
  96.     virtual BOOL                CreateDDEData( HDDEDATA hdata );
  97.     virtual BOOL                CreateDDEData( const LPBYTE src_ddedata
  98.                                 , DWORD src_data_len );
  99.     virtual void                ReleaseDDEData();
  100.     LPBYTE                      ddedata;
  101.     DWORD                       data_len;
  102.     BOOL                        ModifyDDEEntity( struct resbuf *rb );
  103.  
  104.     virtual int                 SendAdsAllEntities();
  105.     virtual int                 SendAdsEntity( struct resbuf* );
  106.     virtual int                 SendAdsTable( char *tbl_name );
  107.     virtual int                 SendAdsAllTables();
  108.     virtual void                RequestADSUpdate()
  109.                                 {
  110.                ( DDE_GLOBAL::acad_connection )->ExcuteCommand( "(ACADDDEFUN)\n" );
  111.                                 }
  112. };
  113.  
  114. #endif
  115.